home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 010 / pacman.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1984-10-27  |  10.1 KB  |  372 lines

  1. 10  REM PAC-MAN Name
  2. 20  REM Version 1.00 (C)Copyright Bob Bison
  3. 30  REM Licensed Material - Program Property of Bob Bison
  4. 40  KEY OFF:SCREEN 0,1:COLOR 15,0,0:WIDTH 40:CLS:LOCATE 5,19:PRINT "IBM"
  5. 50  LOCATE 7,12,0:PRINT "Personal Computer"
  6. 60  COLOR 10,0:LOCATE 10,5,0:PRINT CHR$(213)+STRING$(31,205)+CHR$(184)
  7. 70  LOCATE 11,5,0:PRINT CHR$(179)+"            PAC-MAN            "+CHR$(179)
  8. 80  LOCATE 12,5,0:PRINT CHR$(179)+"                               "+CHR$(179)
  9. 90  LOCATE 13,5,0:PRINT CHR$(179)+STRING$(31,32)+CHR$(179)
  10. 100  LOCATE 14,5,0:PRINT CHR$(179)+"         Version 1.00          "+CHR$(179)
  11. 110  LOCATE 15,5,0:PRINT CHR$(212)+STRING$(31,205)+CHR$(190)
  12. 120  COLOR 15,0:LOCATE 17,6,0:PRINT "(C) Copyright  Bob Bison 1982"
  13. 130  COLOR 14,0:LOCATE 23,7,0:PRINT "Press space bar to continue"
  14. 140  DEF SEG : POKE 106,0
  15. 150  IK$=INKEY$ : IF IK$ <> "" THEN GOTO 150
  16. 160  IK$=INKEY$
  17. 170  IF IK$ = "" THEN GOTO 160
  18. 180  IF IK$ = CHR$(27) THEN GOTO 250
  19. 190  IF IK$ <> " " THEN GOTO 160
  20. 200  ON ERROR GOTO 220
  21. 210  GOTO 230
  22. 220  RESUME 230
  23. 230  ON ERROR GOTO 0
  24. 240  COLOR 7,0: WIDTH 80:GOTO 260
  25. 250  CLOSE : END
  26. 260  REM
  27. 270  GOTO 290
  28. 280  END
  29. 290  CLS : COLOR 7,0 : LOCATE 1,1,0
  30. 300  DIM LSC!(11),LNM$(11)
  31. 310  DIM GO(4),GXX(4),GYY(4),GM(4),GTO!(4),GSC$(4),SC$(24)
  32. 320  LH$=CHR$(205) : LV$=CHR$(186)+" "
  33. 330  C1$=CHR$(201)+LH$:C2$=CHR$(187)+" ":C3$=CHR$(200)+LH$:C4$=CHR$(188)+" "
  34. 340  T1$=CHR$(203)+LH$:T2$=CHR$(185)+" ":T3$=CHR$(202)+LH$:T4$=CHR$(204)+LH$
  35. 350  G$=CHR$(21):BG$=G$+" "+G$+" "+G$+" "+G$+"   "
  36. 360  P$=CHR$(2)
  37. 370  D$=CHR$(249): BD$=CHR$(15)
  38. 380  DOT$=D$+" " : BDOT$=BD$+" "
  39. 390  DOT2$=DOT$+DOT$
  40. 400  DOT3$=DOT2$+DOT$
  41. 410  DOT4$=DOT2$+DOT2$
  42. 420  DOT5$=DOT4$+DOT$
  43. 430  DOT6$=DOT4$+DOT2$
  44. 440  DOT10$=DOT5$+DOT5$
  45. 450  B3T$=C1$+STRING$(2,LH$)+C2$:B3M$=LV$+"  "+LV$:B3B$=C3$+STRING$(2,LH$)+C4$
  46. 460  B4T$=C1$+STRING$(4,LH$)+C2$:B4M$=LV$+"    "+LV$:B4B$=C3$+STRING$(4,LH$)+C4$
  47. 470  B7T$=C1$+STRING$(3,LH$)+STRING$(3,196)+STRING$(4,LH$)+C2$:B7B$=C3$+STRING$(10,LH$)+C4$
  48. 480  L2$=STRING$(3,LH$)+" ": L2NB$=STRING$(4,LH$)
  49. 490  L3$=STRING$(5,LH$)+" ": L3NB$=STRING$(6,LH$)
  50. 500  L4$=STRING$(7,LH$)+" ": L4NB$=STRING$(8,LH$)
  51. 510  L7$=STRING$(13,LH$)+" "
  52. 520  BL4$=STRING$(8,32)
  53. 530  BL5$=STRING$(10,32)
  54. 540  BL9$=STRING$(18,32)
  55. 550  SC!=0:E=1:M=1:ML=0:GC=7
  56. 560  SC$(1)=C1$+STRING$(20,LH$)+T1$+STRING$(20,LH$)+C2$
  57. 570  SC$(2)=LV$+DOT10$+LV$+DOT10$+LV$
  58. 580  SC$(3)=LV$+DOT$+B3T$+DOT$+B4T$+DOT$+LV$+DOT$+B4T$+DOT$+B3T$+DOT$+LV$
  59. 590  SC$(4)=LV$+BDOT$+B3M$+DOT$+B4M$+DOT$+LV$+DOT$+B4M$+DOT$+B3M$+BDOT$+LV$
  60. 600  SC$(5)=LV$+DOT$+B3B$+DOT$+B4B$+DOT$+LV$+DOT$+B4B$+DOT$+B3B$+DOT$+LV$
  61. 610  SC$(6)=LV$+DOT10$+DOT$+DOT10$+LV$
  62. 620  SC$(7)=LV$+DOT$+L3$+DOT$+LV$+DOT$+L3NB$+T1$+L3$+DOT$+LV$+DOT$+L3$+DOT$+LV$
  63. 630  SC$(8)=LV$+DOT5$+LV$+DOT4$+LV$+DOT4$+LV$+DOT5$+LV$
  64. 640  SC$(9)=C3$+L3NB$+C2$+DOT$+T4$+L3$+"  "+LV$+"  "+L3NB$+T2$+DOT$+C1$+L3NB$+C4$
  65. 650  SC$(10)=BL4$+LV$+DOT$+LV$+BL9$+LV$+DOT$+LV$+BL4$
  66. 660  SC$(11)=L4NB$+C4$+DOT$+LV$+"  "+B7T$+"  "+LV$+DOT$+C3$+L4$
  67. 670  SC$(12)=BL5$+DOT$+"    "+LV$+BL5$+LV$+"    "+DOT$+BL5$
  68. 680  SC$(13)=L4NB$+C2$+DOT$+LV$+"  "+B7B$+"  "+LV$+DOT$+C1$+L4$
  69. 690  SC$(14)=BL4$+LV$+DOT$+LV$+BL9$+LV$+DOT$+LV$+BL4$
  70. 700  SC$(15)=C1$+L3NB$+C4$+DOT$+LV$+"  "+L3NB$+T1$+L3$+"  "+LV$+DOT$+C3$+L3NB$+C2$
  71. 710  SC$(16)=LV$+DOT10$+LV$+DOT10$+LV$
  72. 720  SC$(17)=LV$+DOT$+L2NB$+C2$+DOT$+L4$+DOT$+LV$+DOT$+L4$+DOT$+C1$+L2$+DOT$+LV$
  73. 730  SC$(18)=LV$+BDOT$+DOT2$+LV$+DOT6$+"  "+DOT6$+LV$+DOT2$+BDOT$+LV$
  74. 740  SC$(19)=T4$+L2$+DOT$+LV$+DOT$+LV$+DOT$+L3NB$+T1$+L3$+DOT$+LV$+DOT$+LV$+DOT$+L2NB$+T2$
  75. 750  SC$(20)=LV$+DOT5$+LV$+DOT4$+LV$+DOT4$+LV$+DOT5$+LV$
  76. 760  SC$(21)=LV$+DOT$+L4NB$+T3$+L3$+DOT$+LV$+DOT$+L3NB$+T3$+L4$+DOT$+LV$
  77. 770  SC$(22)=LV$+DOT10$+DOT$+DOT10$+LV$
  78. 780  SC$(23)=C3$+STRING$(42,LH$)+C4$
  79. 790  LOCATE 3,54 : PRINT "SCORE"
  80. 800  LOCATE 5,54 : PRINT "                         ";
  81. 810  LOCATE 5,54 : PRINT SC!;
  82. 820  LOCATE 7,54 : PRINT "                         ";
  83. 830  FOR I=1 TO 23
  84. 840  LOCATE I,1:PRINT SC$(I);
  85. 850  NEXT
  86. 860  LOCATE 24,1:PRINT P$+" "+P$;
  87. 870  FOR I=1 TO 4
  88. 880  GYY(I)=12 : GXX(I)=17+2*I:GSC$(I)=" "
  89. 890  NEXT
  90. 900  CDOT=190:PM=3
  91. 910  TB!=3600*VAL(MID$(TI$,1,2))+60*VAL(MID$(TI$,4,2))+VAL(MID$(TI$,7,2))
  92. 920  GOSUB 1100:TN!=TN!+3
  93. 930  FOR I=1 TO 4
  94. 940  LOCATE GYY(I),GXX(I):PRINT GSC$(I);
  95. 950  MID$(SC$(GYY(I)),GXX(I),1)=GSC$(I)
  96. 960  GO(I)=1 : GTO!(I)=TN!+15*I: GSC$(I)=" "
  97. 970  GYY(I)=12 : GXX(I)=17+2*I
  98. 980  LOCATE 12,17+2*I:PRINT G$;
  99. 990  NEXT
  100. 1000  DEF SEG=0
  101. 1010  X=23 : Y=18
  102. 1020  TTT=(PEEK(&H46C)+2) MOD 256
  103. 1025  ON KEY(1) GOSUB 10000:KEY(1) ON
  104. 1030  FOR I=1 TO 3
  105. 1040  SOUND 900,9 : SOUND 32767,9
  106. 1050  NEXT
  107. 1055  KEY(1) OFF
  108. 1060  LOCATE Y,X : PRINT P$;
  109. 1070  TI$=TIME$
  110. 1080  GOTO 1130
  111. 1090  STOP
  112. 1100  TI$=TIME$
  113. 1110  TN!=3600*VAL(MID$(TI$,1,2))+60*VAL(MID$(TI$,4,2))+VAL(MID$(TI$,7,2))
  114. 1120  RETURN
  115. 1130  KEY(11) ON : ON KEY(11) GOSUB 1180
  116. 1140  KEY(12) ON : ON KEY(12) GOSUB 1190
  117. 1150  KEY(13) ON : ON KEY(13) GOSUB 1200
  118. 1160  KEY(14) ON : ON KEY(14) GOSUB 1210
  119. 1170  GOTO 1220
  120. 1180  TM=3:KEY(11) STOP:RETURN
  121. 1190  TM=1:KEY(12) STOP:RETURN
  122. 1200  TM=2:KEY(13) STOP:RETURN
  123. 1210  TM=4:KEY(14) STOP:RETURN
  124. 1220  KEY (11) STOP
  125. 1230  KEY (12) STOP
  126. 1240  KEY (13) STOP
  127. 1250  KEY (14) STOP
  128. 1260  GOTO 1310
  129. 1270  TM=1 :AB=100-SX
  130. 1280  IF SX<AB THEN TM=2:AB=SX
  131. 1290  IF (100-SY)<AB THEN TM=3 : GOTO 1360
  132. 1300  IF SY<AB THEN TM=4 : GOTO 1370
  133. 1310  ON TM GOTO 1320,1340,1360,1370
  134. 1320  NX=X-2 : NY=Y : IF NX<1 THEN NX=45
  135. 1330  GOTO 1380
  136. 1340  NX=X+2 : NY=Y : IF NX>45 THEN NX=1
  137. 1350  GOTO 1380
  138. 1360  NX=X : NY=Y-1 : GOTO 1380
  139. 1370  NX=X : NY=Y+1
  140. 1380  TS$=MID$(SC$(NY),NX,1)
  141. 1390  IF TS$=" " GOTO 1470
  142. 1400  IF TS$=D$ THEN SC!=SC!+10 : CDOT=CDOT-1 : GOTO 1460
  143. 1410  IF TS$=BD$ THEN SC!=SC!+50 :CDOT=CDOT-1 : GOTO 1600
  144. 1420  IF TS$=G$ GOTO 3370
  145. 1430  IF OM=0 THEN GOSUB 1100 : GOTO 1950
  146. 1440  TM=OM: OM=0
  147. 1450  GOTO 1310
  148. 1460  LOCATE 5,54 : PRINT SC!;
  149. 1470  MID$(SC$(Y),X)=" "
  150. 1480  LOCATE Y,X : PRINT " ";
  151. 1490  Y=NY : X=NX
  152. 1500  MID$(SC$(Y),X)=P$
  153. 1510  LOCATE Y,X : PRINT P$;
  154. 1520  OM=TM
  155. 1530  GOSUB 1100
  156. 1540  M=M+1:IF M=ML GOTO 1730
  157. 1550  IF E=1 GOTO 1570
  158. 1560  IF M MOD 3 = 2 GOTO 1130
  159. 1570  IF CDOT>0 GOTO 1950
  160. 1580  FOR I=1 TO 9:SOUND 300,2:SOUND 200,2:NEXT
  161. 1590  GOTO 560
  162. 1600  GC=15:E=-1:M=0:ML=12:GB=200
  163. 1610  COLOR GC
  164. 1620  FOR I=1 TO 4
  165. 1630  IF GO(I)=1 GOTO 1700
  166. 1640  LOCATE GYY(I),GXX(I):PRINT G$;
  167. 1650  ON GM(I) GOTO 1660,1670,1680,1690
  168. 1660  GM(I)=2:GOTO 1700
  169. 1670  GM(I)=1:GOTO 1700
  170. 1680  GM(I)=4:GOTO 1700
  171. 1690  GM(I)=3
  172. 1700  NEXT
  173. 1710  COLOR 7
  174. 1720  GOTO 1460
  175. 1730  IF GC=31 GOTO 1820
  176. 1740  GC=31:ML=24
  177. 1750  COLOR GC
  178. 1760  FOR I=1 TO 4
  179. 1770  IF GO(I)=1 GOTO 1790
  180. 1780  LOCATE GYY(I),GXX(I):PRINT G$;
  181. 1790  NEXT
  182. 1800  COLOR 7
  183. 1810  GOTO 1570
  184. 1820  GC=7:E=1:M=1:ML=0
  185. 1830  COLOR GC
  186. 1840  FOR I=1 TO 4
  187. 1850  IF GO(I)=1 GOTO 1920
  188. 1860  LOCATE GYY(I),GXX(I):PRINT G$;
  189. 1870  ON GM(I) GOTO 1880,1890,1900,1910
  190. 1880  GM(I)=2:GOTO 1920
  191. 1890  GM(I)=1:GOTO 1920
  192. 1900  GM(I)=4:GOTO 1920
  193. 1910  GM(I)=3
  194. 1920  NEXT
  195. 1930  COLOR 7
  196. 1940  GOTO 1570
  197. 1950  D=0
  198. 1960  FOR I=1 TO 4
  199. 1970  GY=GYY(I):GX=GXX(I)
  200. 1980  ON GO(I) GOTO 1990,2030
  201. 1990  IF (GTO!(I))>TN! GOTO 2020
  202. 2000  IF MID$(SC$(10),23,1)=G$ GOTO 3070
  203. 2010  GO(I)=2:NY=10:NX=23:TS$=" ":GOTO 2930
  204. 2020  D=D+1:GOTO 3070
  205. 2030  DY=Y-GY:DX=X-GX
  206. 2040  IF DY<>0 GOTO 2060
  207. 2050  IF GY<12 THEN DY=-1 ELSE DY=1
  208. 2060  IF DX<>0 GOTO 2080
  209. 2070  IF GX<23 THEN DX=-1 ELSE DX=1
  210. 2080  SYE=SGN(DY)*E:SXE=SGN(DX)*E*2
  211. 2090  GX1=GX-2:IF GX1<1 THEN GX1=45
  212. 2100  GX2=GX+2:IF GX2>45 THEN GX2=1
  213. 2110  GY3=GY-1:GY4=GY+1
  214. 2120  ON GM(I) GOTO 2130,2360,2590,2720
  215. 2130  IF 2*ABS(DY)>ABS(DX) GOTO 2270
  216. 2140  IF DX>0 GOTO 2210
  217. 2150  TS$=MID$(SC$(GY),GX1,1)
  218. 2160  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2820
  219. 2170  TS$=MID$(SC$(GY+SYE),GX,1)
  220. 2180  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2860
  221. 2190  TS$=MID$(SC$(GY-SYE),GX,1)
  222. 2200  GOTO 2870
  223. 2210  TS$=MID$(SC$(GY+SYE),GX,1)
  224. 2220  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2860
  225. 2230  TS$=MID$(SC$(GY),GX1,1)
  226. 2240  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2820
  227. 2250  TS$=MID$(SC$(GY-SYE),GX,1)
  228. 2260  GOTO 2870
  229. 2270  TS$=MID$(SC$(GY+SYE),GX,1)
  230. 2280  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2860
  231. 2290  IF DX>0 GOTO 2320
  232. 2300  TS$=MID$(SC$(GY),GX1,1)
  233. 2310  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2820
  234. 2320  TS$=MID$(SC$(GY-SYE),GX,1)
  235. 2330  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2870
  236. 2340  TS$=MID$(SC$(GY),GX1,1)
  237. 2350  GOTO 2820
  238. 2360  IF 2*ABS(DY)>ABS(DX) GOTO 2500
  239. 2370  IF DX<0 GOTO 2440
  240. 2380  TS$=MID$(SC$(GY),GX2,1)
  241. 2390  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2830
  242. 2400  TS$=MID$(SC$(GY+SYE),GX,1)
  243. 2410  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2860
  244. 2420  TS$=MID$(SC$(GY-SYE),GX,1)
  245. 2430  GOTO 2870
  246. 2440  TS$=MID$(SC$(GY+SYE),GX,1)
  247. 2450  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2860
  248. 2460  TS$=MID$(SC$(GY),GX2,1)
  249. 2470  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2830
  250. 2480  TS$=MID$(SC$(GY-SYE),GX,1)
  251. 2490  GOTO 2870
  252. 2500  TS$=MID$(SC$(GY+SYE),GX,1)
  253. 2510  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2860
  254. 2520  IF DX<0 GOTO 2550
  255. 2530  TS$=MID$(SC$(GY),GX2,1)
  256. 2540  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2830
  257. 2550  TS$=MID$(SC$(GY-SYE),GX,1)
  258. 2560  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2870
  259. 2570  TS$=MID$(SC$(GY),GX2,1)
  260. 2580  GOTO 2830
  261. 2590  IF 2*ABS(DY)<ABS(DX) GOTO 2660
  262. 2600  TS$=MID$(SC$(GY3),GX,1)
  263. 2610  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2840
  264. 2620  TS$=MID$(SC$(GY),GX+SXE,1)
  265. 2630  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2880
  266. 2640  TS$=MID$(SC$(GY),GX-SXE,1)
  267. 2650  GOTO 2890
  268. 2660  TS$=MID$(SC$(GY),GX+SXE,1)
  269. 2670  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2880
  270. 2680  TS$=MID$(SC$(GY3),GX,1)
  271. 2690  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2840
  272. 2700  TS$=MID$(SC$(GY),GX-SXE,1)
  273. 2710  GOTO 2890
  274. 2720  IF 2*ABS(DY)<ABS(DX) GOTO 2760
  275. 2730  TS$=MID$(SC$(GY4),GX,1)
  276. 2740  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2850
  277. 2750  GOTO 2620
  278. 2760  TS$=MID$(SC$(GY),GX+SXE,1)
  279. 2770  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2880
  280. 2780  TS$=MID$(SC$(GY4),GX,1)
  281. 2790  IF TS$=" " OR TS$=D$ OR TS$=BD$ OR TS$=P$ OR TS$=G$ GOTO 2850
  282. 2800  TS$=MID$(SC$(GY),GX-SXE,1)
  283. 2810  GOTO 2890
  284. 2820  NM=1:NY=GY:NX=GX1:GOTO 2910
  285. 2830  NM=2:NY=GY:NX=GX2:GOTO 2910
  286. 2840  NM=3:NY=GY3:NX=GX:GOTO 2910
  287. 2850  NM=4:NY=GY4:NX=GX:GOTO 2910
  288. 2860  ON SYE+2 GOTO 2840,2900,2850
  289. 2870  ON SYE+2 GOTO 2850,2900,2840
  290. 2880  ON SXE+3 GOTO 2820,2900,2900,2900,2830
  291. 2890  ON SXE+3 GOTO 2830,2900,2900,2900,2820
  292. 2900  REM
  293. 2910  IF GM(I)=NM GOTO 2930
  294. 2920  REM LOCATE 20,46:PRINT GM(I);GX;GY;NM;NX;NY; :STOP
  295. 2930  LOCATE GY,GX : PRINT GSC$(I);
  296. 2940  LOCATE NY,NX :COLOR GC: PRINT G$;:COLOR 7
  297. 2950  MID$(SC$(GY),GX,1)=GSC$(I) : MID$(SC$(NY),NX,1)=G$
  298. 2960  GXX(I)=NX:GYY(I)=NY:GSC$(I)=TS$:GM(I)=NM
  299. 2970  IF TS$=P$ GOTO 3050
  300. 2980  IF TS$<>G$ GOTO 3070
  301. 2990  J=I
  302. 3000  J=J+1 : IF J=5 THEN J=1
  303. 3010  IF I=J GOTO 3070
  304. 3020  IF GXX(J)<>NX GOTO 3000
  305. 3030  IF GYY(J)<>NY GOTO 3000
  306. 3040  GSC$(I)=GSC$(J):GOTO 3070
  307. 3050  IF E=1 THEN GSC$(I)=" ":GOTO 3100
  308. 3060  GOSUB 3410
  309. 3070  NEXT
  310. 3080  SOUND 32767,D2
  311. 3090  GOTO 1130
  312. 3100  REM
  313. 3110  FOR I=1 TO 9:SOUND 900,1:SOUND 800,1:NEXT
  314. 3120  SOUND 32767,18
  315. 3130  PM=PM-1
  316. 3140  IF PM=0 GOTO 3170
  317. 3150  LOCATE 24,-1+2*PM:PRINT " ";
  318. 3160  GOTO 920
  319. 3170  FOR I=1 TO 10
  320. 3180  IF SC!>LSC!(I) GOTO 3210
  321. 3190  NEXT
  322. 3200  GOTO 3310
  323. 3210  DEF SEG:POKE 106,0:LOCATE 7,55:INPUT ;"ENTER NAME ",NM$
  324. 3220  FOR J=10 TO I STEP -1
  325. 3230  LSC!(J+1)=LSC!(J):LNM$(J+1)=LNM$(J)
  326. 3240  NEXT
  327. 3250  LSC!(I)=SC!:LNM$(I)=NM$
  328. 3260  FOR I=1 TO 10
  329. 3270  IF LSC!(I)=0 GOTO 3310
  330. 3280  LOCATE 10+I,55:PRINT USING "######";LSC!(I);:PRINT "  ";
  331. 3290  PRINT USING "^             ^";LNM$(I);
  332. 3300  NEXT
  333. 3310  LOCATE 7,55 : PRINT "HIT SPACE TO PLAY AGAIN   ";
  334. 3320  IK$=INKEY$
  335. 3330  IF IK$=CHR$(27) GOTO 280
  336. 3340  IF IK$="" GOTO 3320
  337. 3350  IF IK$=" " GOTO 550
  338. 3360  GOTO 3320
  339. 3370  LOCATE Y,X:PRINT " ";
  340. 3380  MID$(SC$(Y),X)=" "
  341. 3390  IF E=1 GOTO 3100
  342. 3400  GOSUB 3410:GOTO 1390
  343. 3410  SC!=SC!+GB
  344. 3420  LOCATE NY,NX-1:PRINT GB;
  345. 3430  LOCATE 5,54:PRINT SC!;
  346. 3440  GB=GB*2
  347. 3450  FOR II=1 TO 18
  348. 3460  SOUND 900-25*II,1
  349. 3470  NEXT
  350. 3480  FOR II=1 TO 4
  351. 3490  IF GYY(II)<>NY GOTO 3510
  352. 3500  IF GXX(II)=NX GOTO 3530
  353. 3510  NEXT
  354. 3520  STOP
  355. 3530  MID$(SC$(NY),NX,1)=GSC$(II):TS$=GSC$(II)
  356. 3540  GYY(II)=12:GXX(II)=17+2*II:GSC$(II)=" "
  357. 3550  LOCATE 12,17+2*II:COLOR 7:PRINT G$;
  358. 3560  GO(II)=1:GOSUB 1100:GTO!(II)=TN!+15
  359. 3570  LOCATE NY,1:PRINT SC$(NY);"  ";
  360. 3580  RETURN
  361. 10000   DEF SEG:POKE 106,0
  362. 10005   CLS:LOCATE 12,1:INPUT"ENTER YOUR NAME: ",XYZ$:XYZ$=LEFT$(XYZ$,8)
  363. 10010   CLS:LOCATE 5,1
  364. 10020   PRINT"                    1.  SAVE SCORE"
  365. 10030   PRINT"                    2.  GET SCORE"
  366. 10040   INPUT"REQUEST: ",A%
  367. 10050   FILE$=XYZ$+".DAT"
  368. 10060   IF A%=1 THEN GOTO 20000
  369. 10070   IF A%=2 THEN GOTO 30000
  370. 10080   BEEP:GOTO 10010
  371. 20000   OPEN FILE$ FOR OUTPVER  .COM   7680   A 12/04/84 00:31<UNK! {000D}><UNK! {000A}>BANNER  .DOC   1664   A 12/04/83 11:07   HGC     .COM    512   A 12/03/84 18:30<UNK! {000D}><UNK! {000A}>JINGBELL.B
  372.